// 猴子吃桃：第 n 天早上剩 1 个，求第一天摘的桃子数
#include <stdio.h>

int main(void)
{
    int n;
    if (scanf("%d", &n) != 1) {
        return 0;
    }
    if (n <= 0) {
        // 题面未明确越界处理，这里不输出避免误判
        return 0;
    }

    // 逆推：P_k = 2*(P_{k+1} + 1)，且 P_n = 1
    long long a = 1;           // 第 n 天早上的数量
    for (int i = 1; i < n; ++i) {
        a = 2 * (a + 1);       // 推回到前一天早上的数量
    }

    // a 为第一天早上的数量（即第一天摘的桃子数）
    printf("%lld", a);
    return 0;
}